Skip to content

feat(podman): export driver traces over OTLP - #2782

Merged
krishicks merged 1 commit into
mainfrom
hicks/push-tvvqnrvruvko
Aug 20, 2026
Merged

feat(podman): export driver traces over OTLP#2782
krishicks merged 1 commit into
mainfrom
hicks/push-tvvqnrvruvko

Conversation

@krishicks

@krishicks krishicks commented Aug 17, 2026

Copy link
Copy Markdown
Collaborator

Summary

Mirror the VM driver tracing setup for Podman. Export standalone driver spans through OTLP/gRPC as the distinct openshell-driver-podman service, propagate W3C context across ComputeDriver RPCs, record bounded RPC names and failures, and flush buffered spans during graceful shutdown.

Podman still runs in-process when selected as a built-in gateway driver. Add a temporary tracing shim that partitions gateway and Podman spans by target into separate tracer providers while preserving their shared trace and parentage. The shim also emits the same ComputeDriver server boundary that the tonic layer emits out of process, keeping the observable trace shape stable when Podman is eventually extracted.

Trace container create preparation, image and storage setup, lifecycle operations, and cleanup. Document the service boundary and cover it with isolated and repeated tracing tests.

image

Related Issue

#1055
#2507

Changes

Testing

  • mise run pre-commit passes
  • Unit tests added/updated
  • E2E tests added/updated (if applicable)

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)
  • Architecture docs updated (if applicable)

@pimlock pimlock left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few comments after exploring this with an agent.

Comment thread crates/openshell-driver-podman/src/otel_tracing.rs Outdated
Comment thread crates/openshell-driver-podman/src/driver.rs
Comment thread crates/openshell-driver-podman/src/driver.rs
Comment thread crates/openshell-driver-podman/src/driver.rs Outdated
Comment thread crates/openshell-driver-podman/src/grpc.rs Outdated
@krishicks
krishicks force-pushed the hicks/push-tvvqnrvruvko branch from d621663 to 6be6a87 Compare August 19, 2026 19:50
@krishicks
krishicks enabled auto-merge August 19, 2026 21:21
@krishicks
krishicks force-pushed the hicks/push-tvvqnrvruvko branch 4 times, most recently from a78b35c to 9fd99c8 Compare August 20, 2026 18:06
Mirror the VM driver tracing setup for Podman. Export standalone driver
spans through OTLP/gRPC as the distinct openshell-driver-podman service,
propagate W3C context across ComputeDriver RPCs, record bounded RPC names
and failures, and flush buffered spans during graceful shutdown.

Podman still runs in-process when selected as a built-in gateway driver.
Add a temporary tracing shim that partitions gateway and Podman spans by
target into separate tracer providers while preserving their shared trace
and parentage. The shim also emits the same ComputeDriver server boundary
that the tonic layer emits out of process, keeping the observable trace
shape stable when Podman is eventually extracted.

Trace container create preparation, image and storage setup, lifecycle
operations, and cleanup. Document the service boundary and cover it with
isolated and repeated tracing tests.

Signed-off-by: Kris Hicks <khicks@nvidia.com>
@krishicks
krishicks force-pushed the hicks/push-tvvqnrvruvko branch from 9fd99c8 to 5cd0707 Compare August 20, 2026 18:28
@krishicks
krishicks added this pull request to the merge queue Aug 20, 2026
Merged via the queue into main with commit 2c0adf4 Aug 20, 2026
37 checks passed
@krishicks
krishicks deleted the hicks/push-tvvqnrvruvko branch August 20, 2026 18:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants